Distributed expert diagnostic service and system

ABSTRACT

An expert diagnostic service system using a distributed architecture for generating expert diagnostic suggestions based on input received from a plurality of diagnostic systems. The expert service system collects data related to effective diagnostic results, such as effective fixes, corresponding to various symptoms/faults from a plurality of diagnostic systems via a data transmission network, and accumulates the number of each effective fix corresponding to each of the various symptoms. The expert service system then assigns at least one effective fix to one of the various symptoms based on a result of the accumulating step, such as the rank of the accumulated number of each fix. The expert service system uses the assigned fix corresponding to a symptom as expert suggestions.

FIELD OF THE DISCLOSURE

The present disclosure generally relates to methods and systems forproviding expert suggestions on diagnostics, and more specifically, toan expert diagnostic service and system that use distributedarchitecture to collect effective fixes for various symptoms from aplurality of sources, and based on the collected fixes, generaterecommendations to diagnose various devices/systems, such as vehicles,computers, electronic devices, electrical equipment, machines, engines,etc.

BACKGROUND OF THE DISCLOSURE

Various types of expert diagnostic systems provide standard testsequences and/or suggestions on diagnosing machines or patients. Forexample, a medical expert system solicits input related to a patient'ssymptoms and provides assistance on finding causes of the symptoms andcures thereof. Some expert diagnostic systems provide expert suggestionson what types of tests should be conducted to isolate sources ofproblems, and what types of fixes are available for such problems. Theseexpert suggestions are created by a group of experienced experts ortechnicians, and implemented as software or control codes to be executedby the diagnostic systems.

Such type of expert diagnostic systems has its limitations anddrawbacks. For a new model of machine or vehicle, it usually takesmonths or years for problems to develop, and for experts to becomefamiliar with the machines or vehicles, and their problems. Thus, itusually takes a long time before an expert diagnostic system can bedeveloped for a specific model of machine or vehicle.

In addition, the effectiveness of an expert diagnostic system is limitedto the source of experts who created the system. For example, if anexpert diagnostic system is created in Arizona, the experts are likelyto be from that geographic area and thus problems they have encounteredtend to be homogeneous. Thus, although an expert diagnostic systemcreated by such experts may work well to solve problems for machines orvehicles in areas having weather conditions similar to those of Arizona,the conventional expert diagnostic system may not have sufficientexpertise to solve problems for machines operated under differentweather conditions, such as Alaska.

Moreover, the wisdom of conventional expert diagnostic systems is alsolimited to the small number of experts who created the expert diagnosticsystems. Given the limited number of experts participated in thedevelopment of conventional expert diagnostic systems, it is unlikelythat a conventional expert diagnostic system would be sufficientlysophisticated to address different types of problems effectively.Furthermore, after an expert diagnostic system is available, it usuallytakes a long time to develop updates for the systems and distribute thesame to consumers.

Therefore, there is a need to design an expert diagnostic system withwisdom from as many experts as possible. There is another need to havean expert diagnostic system designed by experts having diversebackgrounds in order to address as many-types of problems as possible.There is also a need to provide expert suggestions for new models ofmachines or vehicles as soon as possible. An additional need exists toautomate the process for collecting wisdom from different experts and toimplement such wisdom into the expert diagnostic system dynamically.

SUMMARY OF THE DISCLOSURE

An exemplary expert service system addresses the above-noted needs aswell as other needs. The exemplary expert service system dynamicallyobtains data related to effective fixes corresponding to varioussymptoms or faults from a plurality of diagnostic systems via a datatransmission network. The expert service system then categorizes andvalidates the collected data, and generates information relatedeffective fixes corresponding to each fault or symptom based on thecollected data. The expert service system then provides expertsuggestions related to effective fixes to each problem to the pluralityof diagnostic systems. The expert service system may be implemented as aserver that allows diagnostic systems to connect to, and establishcommunication with, the server via a data transmission network, such asthe internet.

In one aspect, the expert service system performs additional analysis onthe data received from the diagnostic systems to provide a prediction ofpossible failure of a specific part and/or component for a specificmodel year of vehicle. For each vehicle of a specific model year, theexpert service system may use statistical methods, such as regressionanalysis, to determine what components may experience problem after acertain mileage range or period of time based on the data received fromthe diagnostic systems. The prediction is included in the expertsuggestions. Once the diagnostic system receives such data, thediagnostic system may generate a report to vehicle owners regardingpossible failures of various components so that preventative measure canbe taken to prevent unexpected breakdown. The diagnostic systems maylink the data related to expert suggestions to a client database thatincludes data related to client's vehicles and personal information,such as name, telephone number and address. When the client's vehiclefits the prediction scenario, such as after certain mileage, thediagnostic system may prompt technicians to notify the vehicle owner fora check.

In another aspect, the expert service system allows only authorizeddiagnostic systems to access the expert suggestions. The authorizeddiagnostic systems may include diagnostic systems that have subscribedto the service or have sent data related to fixes corresponding tosymptoms to the expert service system, etc. The diagnostic systems mayinclude systems for diagnosing machines, vehicles, electronic devices,patients, and the like.

Additional aspects and advantages of the present disclosure will becomereadily apparent to those skilled in this art from the followingdetailed description, wherein only exemplary embodiments of the presentdisclosure is shown and described, simply by way of illustration of thebest mode contemplated for carrying out the present disclosure. As willbe realized, the present disclosure is capable of other and differentembodiments, and its several details are capable of modifications invarious obvious respects, all without departing from the disclosure.Accordingly, the drawings and description are to be regarded asillustrative in nature, and not as restrictive.

BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure is illustrated by way of example, and not by wayof limitation, in the figures of the accompanying drawings and in whichlike reference numerals refer to similar elements and in which:

FIG. 1A is a block diagram showing system architecture of an exemplaryexpert service system.

FIG. 1B shows an exemplary diagnostic system implemented as an engineanalyzer.

FIG. 1C depicts a block diagram of an exemplary data processing systemthat can be used to implement the diagnostic system and the expertservice system according to this disclosure.

FIG. 2 shows a snapshot of an exemplary user interface of the diagnosticsystem.

FIG. 3 is a flow chart illustrating the operation steps of thediagnostic system.

FIG. 4 is a flow chart showing the operation of the expert servicesystem.

DETAILED DESCRIPTION OF THE DISCLOSURE

In the following description, for the purposes of explanation, numerousspecific details are set forth in order to provide a thoroughunderstanding of the present disclosure. It will be apparent, however,to one skilled in the art that the present disclosure may be practicedwithout these specific details. In other instances, well-knownstructures and devices are shown in block diagram form in order to avoidunnecessarily obscuring the present disclosure.

System Architecture

FIG. 1A is a block diagram showing system architecture of an exemplaryexpert diagnostic system according this disclosure for providingdiagnostic suggestions to assist diagnosing vehicles. Referring to FIG.1A, a plurality of diagnostic systems 10 are connected to, and incommunication with, an expert service system 50 via a data transmissionnetwork 52. Each of the diagnostic systems 10 may be of any type, suchas engine analyzers, battery testers, aligner, balancer, computertesters, equipment testers, medical diagnostic systems, etc. The expertservice system 50 may be implemented in a data processing system, suchas a server.

FIG. 1B shows an exemplary diagnostic system 10 implemented as an engineanalyzer. The diagnostic system 10 includes a data processing system 100and associated equipment/circuits connected to the data processingsystem 100, such as engine analyzer circuit 11 and scanner 26. Theengine analyzer circuit 11 is typically equipped with a test lead boom12, including a plurality of test leads and/or sensors adapted to beconnected to various points of a vehicle engine, and a signal processingand conditioning circuit 13 for interfacing the test lead boom to thedata processing system 100. The scanner 26 is implemented for connectingto an on-board computer to retrieve data stored therein. The dataobtained by the scanner is passed to the data processing system 100 forfurther processing. Detailed structures and operations of the diagnosticsystems are also described in U.S. patent application Ser. No.09/669,334, titled “SYSTEM FOR DYNAMIC DIAGNOSIS OF APPARATUS OPERATINGCONDITIONS,” filed Oct. 30, 2000, U.S. provisional application No.60/063,361, filed Oct. 28, 1997, and U.S. Pat. No. 6,141,608, allassigned to the assignee of the current application, the entireties ofwhich are incorporated herein by reference.

FIG. 1C shows a block diagram of an exemplary data processing systemupon which a diagnostic system 10 and/or an expert service system 50 maybe implemented. The data processing system 100 includes a bus 202 orother communication mechanism for communicating information, and a dataprocessor 204 coupled with bus 202 for processing data. Data processingsystem 100 also includes a main memory 206, such as a random accessmemory (RAM) or other dynamic storage device, coupled to bus 202 forstoring information and instructions to be executed by processor 204.Main memory 206 also may be used for storing temporary variables orother intermediate information during execution of instructions to beexecuted by data processor 204. Data processing system 100 furtherincludes a read only memory (ROM) 208 or other static storage devicecoupled to bus 202 for storing static information and instructions forprocessor 204. A storage device 210, such as a magnetic disk or opticaldisk, is provided and coupled to bus 802 for storing information andinstructions.

The data processing system 100 may be coupled via bus 202 to a display212, such as a cathode ray tube (CRT) or liquid crystal display (LCD),for displaying information to an operator. An input device 214,including alphanumeric and other keys, is coupled to bus 202 forcommunicating information and command selections to processor 204.Another type of user input device is cursor control 216, such as amouse, a trackball, or cursor direction keys and the like forcommunicating direction information and command selections to processor804 and for controlling cursor movement on display 212.

The data processing system 100 is controlled in response to processor204 executing one or more sequences of one or more instructionscontained in main memory 206. Such instructions may be read into mainmemory 206 from another machine-readable medium, such as storage device210. Execution of the sequences of instructions contained in main memory206 causes processor 204 to perform the process steps described herein.In alternative embodiments, hard-wired circuitry may be used in place ofor in combination with software instructions to implement thedisclosure. Thus, embodiments of the disclosure are not limited to anyspecific combination of hardware circuitry and software.

The term “machine readable medium” as used herein refers to any mediumthat participates in providing instructions to processor 204 forexecution. Such a medium may take many forms, including but not limitedto, non-volatile media, volatile media, and transmission media.Non-volatile media includes, for example, optical or magnetic disks,such as storage device 210. Volatile media includes dynamic memory, suchas main memory 206. Transmission media includes coaxial cables, copperwire and fiber optics, including the wires that comprise bus 202.Transmission media can also take the form of acoustic or light waves,such as those generated during radio wave and infrared datacommunications.

Common forms of machine readable media include, for example, a floppydisk, a flexible disk, hard disk, magnetic tape, or any other magneticmedium, a CD-ROM, any other optical medium, punch cards, paper tape, anyother physical medium with patterns of holes, a RAM, a PROM, and EPROM,a FLASH-EPROM, any other memory chip or cartridge, a carrier wave asdescribed hereinafter, or any other medium from which a data processingsystem can read.

Various forms of machine-readable media may be involved in carrying oneor more sequences of one or more instructions to processor 204 forexecution. For example, the instructions may initially be carried on amagnetic disk of a remote data processing system, such as a server. Theremote data processing system can load the instructions into its dynamicmemory and send the instructions over a telephone line using a modem. Amodem local to data processing system 100 can receive the data on thetelephone line and use an infrared transmitter to convert the data to aninfrared signal. An infrared detector can receive the data carried inthe infrared signal and appropriate circuitry can place the data on bus202. Bus 202 carries the data to main memory 206, from which processor204 retrieves and executes the instructions. The instructions receivedby main memory 206 may optionally be stored on storage device 210 eitherbefore or after execution by processor 204.

Data processing system 100 also includes a communication interface 218coupled to bus 202. Communication interface 218 provides a two-way datacommunication coupling to a network link 220 that is connected to alocal network 222. For example, communication interface 218 may be anintegrated services digital network (ISDN) card or a modem to provide adata communication connection to a corresponding type of telephone line.As another example, communication interface 218 may be a local areanetwork (LAN) card to provide a data communication connection to acompatible LAN. Wireless links may also be implemented. In any suchimplementation, communication interface 218 sends and receiveselectrical, electromagnetic or optical signals that carry digital datastreams representing various types of information. The data processingsystem 100, when implemented in the diagnostic system 10, may connect toa data processing system implemented in the expert service system 50 viathe communication interface 218.

Network link 220 typically provides data communication through one ormore networks to other data devices. For example, network link 220 mayprovide a connection through local network 222 to data equipmentoperated by an Internet Service Provider (ISP) 226. ISP 226 in turnprovides data communication services through the world large packet datacommunication network now commonly referred to as the Internet 227.Local network 222 and Internet 227 both use electrical, electromagneticor optical signals that carry digital data streams. The signals throughthe various networks and the signals on network link 220 and throughcommunication interface 218, which carry the digital data to and fromdata processing system 100, are exemplary forms of carrier wavestransporting the information.

Data processing system 100 can send messages and receive data, includingprogram code, through the network(s), network link 220 and communicationinterface 218. In the Internet example, a server 230 might transmit arequested code for an application program through Internet 227, ISP 226,local network 222 and communication interface 218.

The data processing system 100 also has various signal input/outputports 210 for connecting to and communicating with peripheral devicesand/or the scanner 26, the analyzer circuit 11, and/or other testcircuits, connectors, cables, leads, probes, etc. The input/output ports210 may include USB port, PS/2 port, serial port, parallel port,IEEE-1394 port, infra red communication port, etc., and/or otherproprietary ports. The data processing system 100 may communicate withother data processing systems via such signal input/output ports 210. Asshown in FIG. 1B, interfacing equipment/circuits and/or testingequipment may connect to the data processing system 100 via theinput/output ports 210.

System Operation

The diagnostic system 10 provides a fault-based diagnosis of a vehicle,in which the system presents a menu of faults or symptoms indicated,e.g., by symptoms or service codes. A user selects one or more of thelisted symptoms or faults that are pertinent to the vehicle underdiagnosis. Based on the selected faults or symptoms, the system 10presents a list of suggested tests or fixes to be performed to diagnoseor cure the faults or symptoms. The tests or fixes are listed in theorder in which they would most likely be effective in diagnosing thevehicle faults.

FIG. 2 shows a snapshot of an exemplary user interface 30 of thediagnostic system 10. The user interface 30 has a series of icons 31-35,respectively designated “Vehicle Identification” and “Test/Analysis.”When the Vehicle Identification icon is selected, the diagnostic system10 presents the user with a number of questions or fields, such as modelyear, make, model name, engine size and the like, each field presentingthe user with a menu of unique values from within that field from whichthe user may select to identify the vehicle under diagnosis.

Once the vehicle is identified, the user is able to begin diagnosis byselecting the Test/Analysis icon 32, the diagnostic system 10 brings upa screen display 39 as shown in FIG. 3. A list of symptoms 40 related tothe vehicle under diagnosis is displayed in the foreground in the screendisplay 39. The list of symptoms 40 presented to the user isrepresentative of industry symptom diagnosis and supports the majorityof drivability complaints.

A standard list of symptoms is possible because vehicles use commontechnology. They each have mechanical, ignition, fuel, and computercomponents that function in roughly the same manner. Other more specificsymptoms can usually be assigned to one or more of the symptoms from themain symptom list. For example, a specific symptom of “Vehicle Dies WhenTaking a Right Turn” will fit under a less specific symptom of “VehicleDies at Idle/Deceleration/Braking.” The tests to diagnose the conditionare generally the same. A standard list of symptoms is used because itprovides a consistent interface and diagnostic philosophy for allvehicles.

When a user selects one or more of the listed symptoms which areexhibited by the vehicle under test, the screen display 39 presents alist 42 of possible causes of the symptom or symptoms selected and anassociate list of test procedures to be performed to check for thosecauses. The test procedures are listed in the order of the probabilityor likelihood that the test will be successful in diagnosing the causeof the selected symptom or symptoms. In one embodiment, the diagnosticsystem 10 presents a list of suggested fixes for each symptoms such thatthe user may proceed to repair the vehicle directly.

Once the symptom or symptoms have been selected and the associatedrecommended test procedures displayed, the user can select one of thedisplayed test procedures, and the system will then launch or initiatethat procedure. While the screen display 39 lists a recommended orderfor performing listed tests, the user is free to perform the tests inany order desired.

Once the user selects the test to be performed, the diagnostic system 10queries a test library database coupled to the diagnostic system 10 todetermine what support modules, sensors, and/or circuits are needed forthe particular test to be performed. The diagnostic system 10 mayprovide prompts instructing the user connect the needed support modules,sensors, and/or circuits to the vehicle and the diagnostic system 10.For example, the user will be instructed in the manner of connecting andusing a scanner for downloading information from the vehicle on-boardcomputer and/or controlling operation of certain computer functions.

The diagnostic system 10 provides a feedback mechanism for users toprovide data related to effective diagnostic results to the expertservice system 50. The diagnostic system 10 may provide a “ConfirmDiagnosis” icon on the screen. After the user performed a selected testprocedure and found the root cause for the selected symptom or symptoms,the user may click the Confirm Diagnosis icon to indicate that theselected test procedure is an effective test for the selected symptom orsymptoms. In response, the diagnostic system 10 stores data related tothe effective test and the corresponding symptom or symptoms, includingthe vehicle model under diagnosis, the symptoms, the test name, etc.

The diagnostic system may maintain a database to manage the data relatedto the effective test and corresponding symptoms. The diagnostic system10 tracks the number of each effective test corresponding to eachsymptom. Whenever the user indicates an effective test effectivelyisolates the cause of a symptom or fault, the diagnostic system 10 mayincrement the count for the test. The database may reside in the storagedevice 210 of the data processing system 100, and/or in a remote dataprocessing system connecting to the diagnostic system 10 via a datatransmission network. In one embodiment, the diagnostic system 10 sendsthe data related to the effective test to the expert service system 50after each diagnosis.

If a test other than the recommended tests found the cause of thesymptom or fault, the diagnostic system 10 may present a text box forthe user to enter a brief description of the test used to isolate thecause of the symptoms. That data is also saved in a manner as describedrelative to the effective tests.

FIG. 3 is a flow chart illustrating the operation of the diagnosticsystem 10. In step 50, the user enters vehicle identificationinformation and selects the Tes/Analysis icon, which brings up a screenas shown in FIG. 3. In Step 51, the diagnostic system 10 accesses theappropriate database and displays a list of faults corresponding to thevehicle under diagnosis to the user as shown in FIG. 3. The user thenselects one or more faults (Step 522). In response, the diagnosticsystem 10 accesses the database with the selected faults, and retrievesinformation related to applicable causes and related test procedures(step 53). If only one fault is selected, the diagnostic system 10 sortsthe list of possible causes by their respective ranks and presents thelist to the user along with tests which have been previously performed(Step 56). If more than one fault was selected, the diagnostic system 10applies a ranking algorithm for each cause/test and presents the list ofpossible cause/test to the user (Steps 56 and 57). In Steps 58, the userselects a test to be performed. In response, the diagnostic system 10performs the selected test process (Step 59). In step 60, the userindicates, using an appropriate icon, whether the test identified thecause of the fault. If the selected test effectively isolates the causeof the symptom or symptoms, the diagnostic system 10 stores data relatedto the effective test in a database (Step 62). The user is then promptedwhether testing should continue (Step 63). If so, the last testperformed is again highlighted (Step 61); if not, the diagnostic system10 exits the fault testing mode (Step 64).

The diagnostic system 10 may collection additional information relatedto diagnostics conducted by the diagnostic system 10. For example,information related to ineffective tests/fixes corresponding to varioussymptoms/faults can be collected. Information related to the technicianwho conducted the diagnostics can also be collected by the diagnosticsystem 10. For example, the diagnostic system 10 may request atechnician to input his or her experience range, such as experienced,inexperienced, etc.

Machine-readable instructions implementing the above-described processmay be stored in, and executed by, the diagnostic system 10. Themachine-readable instructions may be stored in a machine-readablestorage medium, such as optical disks, hard disks, tapes, electronicwaves, etc., and distributed to customers. The machine-readableinstructions may also be distributed via the Internet. Customers whowish to have their diagnostic systems to perform the above-mentionedprocess may download the instructions from the expert service system 50and/or a web site, and install the programs on their own systems.

Collection and Processing of Diagnostic Results

As discussed earlier, for every diagnostic process, the diagnosticsystem 10 stores data related to effective diagnostic results in a datastorage device of the diagnostic system 10 or in a remote dataprocessing system coupled to the diagnostic system 10 via a datatransmission network. The diagnostic results may include attributes ofthe vehicles (year, make, model, engine particulars, etc.), symptoms orfaults, effective tests for finding causes of a specific symptom,effective fixes corresponding to a specific fault, measurements obtainedduring the diagnoses, information obtained from vehicle on-boardcomputers, additional comments/descriptions entered by technicians,ineffective tests/fixes corresponding to various symptoms/faults,information related to the technician who conducted the diagnostics canalso be collected by the diagnostic system, etc. The expert servicesystem 50 and the diagnostic systems 10 use a predetermined protocol toallow the expert system 50 to access the data related to diagnosticresults.

According to one embodiment, the saved data is retrieved when thediagnostic system 10 connects to the expert service system 50 via thedata transmission network 52. The diagnostic system 10 may connect tothe expert service system 50 for various reasons. For example, thediagnostic system 10 may connect to the expert service system 50 todownload updated software for providing expert diagnostic suggestions asdescribed earlier relative to FIGS. 2 and 3. The diagnostic system 10may be required to connect to the expert service system 50 whenever thediagnostic system 10 is operating to access the most updated softwarestored in the expert service system 50 to perform expert diagnosticservices. According to another embodiment, the data collected by thediagnostic systems 10 may be sent to the expert service system 10 viameans other than direct data communications. For example, the data canbe sent to the expert service system 10 via mail or telephone.

Referring to FIG. 4, after the diagnostic system 10 is connected theexpert service system 50 (Step 401), the expert service system 50 maygenerate a request signal to the diagnostic system 10 to request datarelated to the diagnostic results. In response to the request signal,the diagnostic system 10 accesses the data related to the diagnosticresults and send it to the expert service system 50 (Step 403). Afterthe data has been sent to the expert service system 50, the diagnosticsystem may set flags to indicate that the data has be sent.Alternatively, the diagnostic system 10 may delete the data from thedata storage device in which the data is stored.

According to another embodiment, after the diagnostic system 10 isconnected to the expert service system 50 via the data transmissionnetwork 52, the diagnostic system 10 periodically gathers the datarelated to effective diagnostic results and sends it to the expertservice system 50. Alternatively, the expert service system 50 mayperiodically issues a request signal to request the diagnostic system 10to send the data related to effective diagnostic results to the expertservice system 50.

The expert service system 50 maintains a database to manage the datarelated to effective diagnostic results received from the diagnosticsystems 10. After the data arrives from the diagnostic systems 10, theexpert service system 50 may sort the data based on the symptoms orfaults addressed and their corresponding fixes and/or tests (Step 405).The expert service system 50 tracks the number of each effective fix ortest corresponding to each symptom or fault. For each symptom or fault,the expert service system 50 ranks the effective fixes or testscorresponding to the symptom or fault based on their respective numbers.In Step 407, the expert service system 50 assigns only top ranked fixesor tests to each fault or symptom as effective fixes or tests, andupdates the software for providing expert diagnostic suggestionsaccordingly (Step 409). For example, the expert service system 50 mayassign top 10 tests or fixes corresponding to each fault or symptom astheir respective effective tests or fixes.

Alternatively, the expert service system 50 may calculate an index foreach fix or test corresponding to each symptom or fault based on, forexample, the number of times each fix/test fixed/diagnosed eachsymptom/fault for each specific vehicle, or the ratio of the number oftimes each fix/test successfully fixed/diagnosed each symptom/fault foreach specific vehicle, to the number of times the fix/test used tofix/diagnose the symptom/fault. The expert service system 50 may use anytype of indices that is indicative the effectiveness of each fix/test.The expert service system 50 then updates the recommendations stored inthe database based on the ranking of the index.

The expert service system 50 may perform additional analysis to screenthe data received from the diagnostic systems 10. After data related toeffective diagnostic results is received, the expert service system 10performs a validation process to determine whether the fixes or testscorresponding to each symptom or fault are effective. The data may bereviewed by a group of experts who will indicate whether a specific testor fix corresponding to the fault or symptom is valid. The level ofexperience of a technician who conducted the diagnosis may be taken intoconsideration during the validation process. A validation result isinput to the expert service system 50. Only valid fixes or tests can beassigned as effective fixes or tests by the expert service system 50.

As discussed earlier, the diagnostic systems 10 allow users to submitinformation related to effective tests or fixes other than therecommended tests/fixes corresponding to specific symptoms or faults.The diagnostic system 10 may present a text box for the user to enter abrief description of the test used to isolate the cause of the symptoms.That data is also saved in the diagnostic system 10 and accessible bythe expert service system 50. The expert service system 50 apply avalidation process similar to that discussed above to validate thefixes/tests, and add the fixes/tests to the expert suggestions based onthe validation result.

According to another embodiment, the expert service system 50 performsadditional analysis on the data received from the diagnostic systems toprovide a prediction of possible failure of a specific part and/orcomponent for a specific model year of vehicle. For each vehicle of aspecific model year, the expert service system 50 may use statisticalmethods, such as regression analysis, to determine what components mayexperience problem after a certain mileage range or period of time basedon the data received from the diagnostic systems. For example, based ondata related to numerous diagnostic results related to Honda Accord, theexpert service system 50 may determine that the vehicle's timing belt islikely to experience a failure after 80,000 miles or five years afterpurchase. The result is included in the expert suggestions. Once thediagnostic system 10 receives such data, the diagnostic system maygenerate a report to vehicle owners regarding possible failures ofvarious components so that preventative measure can be taken to preventunexpected breakdown. The diagnostic systems 10 may link the datarelated to expert suggestions to a client database that includes datarelated to client's vehicles and personal information, such as name,telephone number and address. When the client's vehicle fits theprediction scenario, such as after certain mileage, the diagnosticsystem 10 may prompt technicians to notify the vehicle owner for acheck.

After the software for providing expert suggestions is updated, theexpert service system 50 allows the diagnostic systems 10 to downloadthe updated software to provide expert diagnostic suggestions using theupdated suggested list of tests or fixes reflecting the newest update ofthe expert suggestions. The diagnostic systems 10 may issue a requestsignal to the expert service system 50 to access the most updated expertdiagnostic suggestions. In response, the expert service system 50controls the software including the most updated expert diagnosticsuggestions to be delivered to the diagnostic systems that requestedaccess to the software. The software implementing the expert suggestionsmay also be distributed to customers via CD-ROMs, cartridges, add-oncards, the internet, etc.

System Security and Management

The expert service system 50 may allow only authorized diagnosticsystems to access or receive information related to updated expertdiagnostic suggestions. Each diagnostic system 10 may be assigned aunique identification code, which is sent to the expert service system50 when the diagnostic system 10 establishes communication with theexpert service system 50. The expert service system 50 maintains a listof authorized diagnostic systems, such as diagnostic systems that hadsent data related to effective diagnostic results to the expert servicesystem 50 or had paid or subscribed to sue the service, or diagnosticsystems that were purchased from a specific source.

The expert service system 50 may be implemented as a server allowingdiagnostic systems 10 to connect to the server via the internet,intranet, and/or LAN, and the like. In order to limit access to validusers only, the expert service system 50 controls the distribution ofupdated expert suggestions based on, for example, a product code uniqueto each diagnostic system made by a specific company. Every diagnosticsystem 10 sold by the specific company includes a circuit or add-on cardwith an embedded product code unique to each machine. Alternatively, theproduct code may be generated by a software application and stored in aspecific location of non-volatile memories that is accessible bysoftware applications.

The expert service system 50 maintains a database for valid productcodes, such as product codes for all diagnostic systems made by thespecific company. Each time a diagnostic system 10 connects to theexpert service system 50 to access data related to updated expertsuggestions, the expert service system 50 will require submission of theproduct code. The product code can be submitted by manual entry orautomatic retrieval by software running on the diagnostic system.

Based on the product code submitted by the diagnostic system, the expertservice system 50 accesses the user database of valid product codes anddetermines whether the received product code matches one of the validproduct codes. In response to a match, the expert service system 50authorizes the diagnostic system 10 to access the data; otherwise,access is denied.

According to one embodiment, system security may be obtained by usingactivation codes to control distribution of the data related to expertsuggestions. An activation code is similar to a key to unlock theservice data downloaded to diagnostic systems. Only authorized userswill be provided with an activation code. Without a valid activationcode, even if data related to expert suggestions is properly downloaded,it cannot be properly installed on or used by the diagnostic system. Theactivation code may be provided to customers when the diagnostic systems10 are shipped, or may be obtained by telephone or e-mail when userssubscribe to the service.

Activation codes can be used in conjunction with product codes toachieve higher system security. For instance, the expert service system50 generates an activation code based on a product code submitted by avalid user. The activation code is then sent to the user for activatingthe downloaded data. A software program that runs on the diagnosticsystem will access the product code of the diagnostic system anddetermine whether the product code of the diagnostic system matches withthe product code from which the activation code is generated. Unless aproper match is obtained, the activation code will not unlock thedownloaded software. By this process, verification of identities ofhardware and software is conducted. Thus, duplicates of downloadedservice data and activation code cannot properly operate on otherunauthorized diagnostic systems, as a check of product codes would notgenerate a match.

The expert service system 50 may also control access to the system bycreating a database for valid users. For example, only those userspaying fees can access to the data related to updated expertsuggestions. Users will be requested to log in every time with a user IDand password so that the expert service system 50 may determine identityof a user. Automatic log-in can be achieved by verifying identity codesembedded in the requests sent by a diagnostic system. For example, whena user uses a web browser to access the website maintained by the expertservice system 50, “cookies,” which are widely used to track a specificcomputer system, can be utilized to determine a user's identity andwhether the system has subscribed to the service.

The expert service system 50 may allow users to purchase a license todownload data related to updated expert suggestions. The license allowsa user to access the data related to updated expert suggestions for acertain period of time. A license code will be generated and sent to thelicensee. In certain aspects, a license code is similar to an activationcode described above, as the license code is necessary for unlocking andaccessing the downloaded data related to updated expert suggestions. Thelicense code may be stored at a specific location on a non-volatilememory. The downloaded data related to updated expert suggestions, whenexecuted or accessed, will verify whether a valid license code exists.

In order to ensure that the downloaded data is effective only within thelicensed period, an expiration date is encoded into the license code.When the diagnostic system executes or accesses the downloaded servicedata, the license code will be read out and compared with system time todetermine whether the license is still valid.

Other information can also be embedded in the license code to increasesystem security. The expert service system 50 may allow a diagnosticsystem 10 to access the service data even if the diagnostic system iswithout a unique product code. The diagnostic system 10 will be asked todownload an installation program. The installation program, whenexecuted, accesses the controller of a hard disk installed on thediagnostic system and obtains a serial number of the hard disk. Theinstallation program then generates a unique ID based on the serialnumber of the hard disk. The unique ID is treated as a product code asdescribed above and sent to the expert service system 50. After the useris properly licensed, the unique ID is used to generate an activationcode or license code as discussed above.

The expert diagnostic service and system described above may be utilizedwith any appropriate diagnostic systems, such as medical diagnosticsystems for diagnosing patients, battery testers for testing batteries,engine analyzer for analyzing engines, and the like.

The disclosure has been described with reference to specific embodimentsthereof. It will, however, be evident that various modifications andchanges may be made thereto without departing from the broader spiritand scope of the disclosure. The concepts described in the disclosurecan apply to various operations of the networked presentation systemwithout departing from the concepts. The specification and drawings are,accordingly, to be regarded in an illustrative rather than a restrictivesense.

1. An expert diagnostic service method comprising the steps of:collecting data related to effective fixes corresponding to varioussymptoms from a plurality of diagnostic systems via a data transmissionnetwork; accumulating the number of each effective fix corresponding toeach of the various symptoms; and assigning at least one effective fixto one of the various symptoms based on a result of the accumulatingstep.
 2. The method of claim 1 further rendering a result of theassigning step available to at least one of the plurality of diagnosticsystems.
 3. The method of claim 1, wherein the accumulating stepcomprises the steps of: receiving a validation result includingvalidated effective fixes corresponding to each of the various symptoms;and accumulating the number of each validated effective fixcorresponding to each of the various symptoms.
 4. The method of claim 1,wherein the plurality of diagnostic systems are selected from the groupconsisting of an engine analyzer, an aligner, a balancer, and a batterytester.
 5. The method of claim 1, wherein the diagnostic systems areconfigured to diagnose a vehicle or a patient.
 6. The method of claim 1,further generating data including the at least one effective fixassigned to the one of the various symptoms.
 7. The method of claim 6further comprising the steps of: receiving a request to access to thedata including the at least one effective fix assigned to the one of thevarious symptoms from one of the plurality of diagnostic systems via thedata transmission network; transmitting the data including the at leastone effective fix assigned to the one of the various symptoms to the oneof the plurality of diagnostic systems via the data transmissionnetwork; and receiving data related to effective fixes corresponding tovarious symptoms from the one of the plurality of diagnostic systems viathe data transmission network.
 8. An expert diagnostic service methodcomprising the steps of: collecting data related to effective diagnosticresults corresponding to various faults from a plurality of diagnosticsystems via a data transmission network; accumulating the number of eacheffective diagnostic result corresponding to each of the various faults;and assigning at least one effective diagnostic result to one of thevarious faults based on a result of the accumulating step.
 9. The methodof claim 8, further rendering a result of the assigning step availableto at least one of the plurality of diagnostic systems.
 10. The methodof claim 8, wherein the accumulating step comprises the steps of:receiving a validation result including validated effective diagnosticresults corresponding to each of the various faults; and accumulatingthe number of each validated diagnostic result corresponding to each ofthe various faults.
 11. The method of claim 8, wherein the data relatedto effective diagnostic results includes at least one of attributesrelated to an apparatus under diagnosis, a cause of a fault, a test forfinding a cause of a fault, and a fix to cure a cause of a fault. 12.The method of claim 8, wherein the diagnostic systems are configured todiagnose a vehicle or a patient.
 13. The method of claim 8 furthergenerating data including the at least one effective diagnostic resultassigned to the one of the various faults.
 14. The method of claim 13further comprising the steps of: receiving a request to access to thedata including the at least one effective fix assigned to the one of thevarious symptoms from one of the plurality of diagnostic systems via thedata transmission network; transmitting the data including the at leastone effective fix assigned to the one of the various symptoms to the oneof the plurality of diagnostic systems via the data transmissionnetwork; and receiving data related to effective diagnostic resultscorresponding to various faults from the one of the plurality ofdiagnostic systems via the data transmission network.
 15. A dataprocessing system for providing expert diagnostic services comprising: adata processor for processing data; a data communication port forconnecting to a data transmission network; a data storage device forstoring instructions; and a data transmission path coupled to the dataprocessor, the data communication port, and the data storage device;wherein the instructions, when executed by the data processor, controlthe data processing system to perform the machine-implemented steps of:receiving data related to effective diagnostic results corresponding tovarious faults from a plurality of diagnostic systems via the datatransmission network; accumulating the number of each effectivediagnostic result corresponding to each of the various faults; andassigning at least one effective diagnostic result to one of the variousfaults based on a result of the accumulating step.
 16. The system ofclaim 15, wherein the storage device further stores instructions that,when executed by the data processor, control the data processing systemto render a result of the assigning step available to at least one ofthe plurality of diagnostic systems.
 17. The system of claim 15, whereinthe storage device further stores instructions that, when executed bythe data processor, control the data processing system to perform themachine-implemented steps of: receiving a validation result includingvalidated effective diagnostic results corresponding to each of thevarious faults; and accumulating the number of each validated diagnosticresult corresponding to each of the various faults that is validaccording to the validation result.
 18. The system of claim 15, whereinthe data related to effective diagnostic results includes at least oneof attributes related to an apparatus under diagnosis, a cause of afault, a test for finding a cause of a fault, and a fix to cure a causeof a fault.
 19. The system of claim 15, wherein the diagnostic systemsare configured to diagnose a vehicle or a patient.
 20. The system ofclaim 15, the storage device further stores instructions, when executedby the data processor, control the data processing system to generatedata including the at least one effective diagnostic result assigned tothe one of the various faults.
 21. The system of claim 20, wherein thestorage device further stores instructions that, when executed by thedata processor, control the data processing system to perform themachine-implemented steps of: receiving a request to access to the dataincluding the at least one effective fix assigned to the one of thevarious symptoms from one of the plurality of diagnostic systems via thedata transmission network; transmitting the data including the at leastone effective fix assigned to the one of the various symptoms to the oneof the plurality of diagnostic systems via the data transmissionnetwork; and receiving data related to effective diagnostic resultscorresponding to various faults from the one of the plurality ofdiagnostic systems via the data transmission network.
 22. Amachine-rea+dable medium bearing instructions for providing expertdiagnostic services, the instructions upon execution by a dataprocessing system causing the data processing system to perform thesteps of: receiving data related to effective diagnostic resultscorresponding to various faults from a plurality of diagnostic systemsvia the data transmission network; accumulating the number of eacheffective diagnostic result corresponding to each of the various faults;and assigning at least one effective diagnostic result to one of thevarious faults based on a result of the accumulating step.
 23. Themedium of claim 8, further bearing instructions that, upon execution bya data processing system, cause the data processing system to render aresult of the assigning step available to at least one of the pluralityof diagnostic systems.
 24. The medium of claim 22 further bearinginstructions upon execution by a data processing system causing the dataprocessing system to perform the machine-implemented steps of: receivinga validation result including validated effective diagnostic resultscorresponding to each of the various faults; and accumulating the numberof each validated diagnostic result corresponding to each of the variousfaults that is valid according to the validation result.
 25. The mediumof claim 22, wherein the data related to effective diagnostic resultsincludes at least one of attributes related to an apparatus underdiagnosis, a cause of a fault, a test for finding a cause of a fault,and a fix to cure a cause of a fault.
 26. The medium of claim 22,wherein the diagnostic systems are configured to diagnose a vehicle or apatient.
 27. The medium of claim 22 further bearing instructions uponexecution by a data processing system causing the data processing systemto generate data including the at least one effective diagnostic resultassigned to the one of the various faults.
 28. The medium of claim 27further bearing instructions that, upon execution by a data processingsystem, cause the data processing system to perform themachine-implemented steps of: receiving a request to access to the dataincluding the at least one effective fix assigned to the one of thevarious symptoms from one of the plurality of diagnostic systems via thedata transmission network; transmitting the data including the at leastone effective fix assigned to the one of the various symptoms to the oneof the plurality of diagnostic systems via the data transmissionnetwork; and receiving data related to effective diagnostic resultscorresponding to various faults from the one of the plurality ofdiagnostic systems via the data transmission network.
 29. The method ofclaim 1, wherein the data related to effective diagnostic resultsincludes at least one of attributes related to an apparatus underdiagnosis, a cause of a fault, a test for finding a cause of a fault,and a fix to cure a cause of a fault.
 30. The method of claim 29,further generating a fault prediction based on the data related toeffective diagnostic results.
 31. The method of claim 30, wherein thefault prediction includes a possible fault that may be experienced by aspecific component.
 32. The method of claim 11 further generating afault prediction based on the data related to effective diagnosticresults.
 33. The method of claim 32, wherein the fault predictionincludes a possible fault that may be experienced by a specificcomponent.
 34. The system of claim 18, wherein the storage devicefurther stores instructions that, when executed by the data processor,control the data processing system to generate a fault prediction basedon the data related to effective diagnostic results.
 35. The system ofclaim 34, wherein the fault prediction includes a possible fault thatmay be experienced by a specific component.
 36. The medium of claim 25further bearing instructions that, upon execution by a data processingsystem, cause the data processing system to generate a fault predictionbased on the data related to effective diagnostic results.
 37. Themedium of claim 36, wherein the fault prediction includes a possiblefault that may be experienced by a specific component.
 38. An expertdiagnostic service method comprising the steps of: collecting datarelated to effective fixes corresponding to various symptoms from aplurality of diagnostic systems via a data transmission network;accumulating the number of each effective fix corresponding to each ofthe various symptoms; generating an index for each effective fixcorresponding to each of the various symptoms based on a result of theaccumulating step; and assigning at least one effective fix to one ofthe various symptoms based on the index for each effective fixcorresponding to each of the various symptoms.